home *** CD-ROM | disk | FTP | other *** search
Text File | 1994-09-25 | 5.1 KB | 101 lines | [TEXT/MPCC] |
- MW Pascal PPC 1.0d3 - Release notes
-
- Fixed since MW Pascal PPC 1.0d1.
-
- - Fixed I/O performed on FP constants, expressions and variables.
- - Fixed a bug in converting char expressions to strings.
- - Fixed many bugs in parameter passing for FP values and expressions.
- - Fixed calling conventions for opening a file of ...
- - Fixed some bugs in typecasting for structured types.
- - Fixed StringOf for real values.
- - Fixed a bug in pos when looking for a missing single char target.
- - Fixed a bug in concat that corrupted the caller's stack.
- - Fixed a bug in passing and returning 1-byte sets.
- - Fixed a bug in calling conventions for all std routines handling FP values.
- - Fixed a bug in write that prevented functions returning strings <= 4 bytes from being
- actual parameters.
- - Fixed a bug with packed arrays of boolean when the array index is a constant and the
- value assigned is also a constant.
- - Enabled lvalue type casting on function returns.
- - Fixed a bug with the typecast of a by-var parameter as the expression of a with statement.
- - Fixed a bug in BE for functions returning strings, the parameters weren't popped by the
- callee.
- - Fixed a bug in casting of ordinal types to pointer types.
- - Enabled casting of integer constants to small arrays of something different that chars.
- - Fixed a bug in parsing parameter declarations, if the parameter list started with ((, it
- caused the compiler to hang.
- - In some cases, a FP value was badly placed in precompiled units.
- - Fixed many bugs related to parameter accessed thru nested functions.
- - Fixed a bug with unsigned ranges in packed arrays.
- - Fixed a bug with reading/writing of OSTYPEs.
- - Fixed a bug with accessing an OSTYPE array element.
- - Fixed a bug for the passing of a local routine to a routine.
- - Fat binary.
- - Added some glue to be able to call UPP.
- - Added some glue for PBxxx routines that use a boolean to indicates sync or async IO.
- - Some other problems were common to both 68K and PPC because of the shared front-end,
- these problems are not listed here.
-
- Known problems and limitations
-
- - input^ and output^ generate bogus code.
- - Non-local gotos and exits are not supported.
- - runtime range and overflow checking not implemented.
-
- Make utility
- - The make utility is rewritten and working, remove all binaries and compact your projects
- before using the new make command. The algorithm & implementation are faster than with
- the previous implementation. The direct compilation of a unit (cmd-K) will compile
- only the implementation if the interface wasn't changed, otherwise the entire file is
- compiled. If you have dependencies for which the units weren't compiled, you'll get
- unit wasn't compiled, use the make command instead. There's a timestamp for every
- project's unit interface compiled, these timestamps are used by the make utility to
- compute the needed recompilations. There's no timestamp in libraries, so if you modify
- a lib's interface and make a lib out of that project to use in another project you
- should remove the binaries and remake the project, I choosed to use this approach
- because it's less likely that someone changes a lib interface than a lib implementation.
- - The make utility can generate a trace of the compilations, to enable this function
- you have to check the 'generate make map file' from the Language preferences settings.
- (If the make detects a cycle, use this option to print the files involded in it.)
-
- Preprocessor
- - MWERKS is defined as TRUE.
- - MAC68K is defined as FALSE.
- - POWERPC is defined as TRUE.
- - the following options are not supported, but will be
- $OV, $R,
- - the following options won't be supported
- $MC680x0, $MC6888x, $B, $C, $H, $N, $A1, $A5, $E, $K, $P, $W, $D
-
- Extensions
- - QuickDraw global variables (thePort, ...) are now contained in a record variable
- named qd. (See Sillyballs.p or TubeTest.p, to see its usage).
- - Procedural types are supported, see the documentation ...
- - Objects can be propagated through USES clauses with the Uses propagation switch.
- - Directives in the prefix file must use the preprocessor's syntax.
- - Screen oriented I/O are triggered by the first I/O call made without a file descriptor.
-
- Interfaces
- - You have to include MacIntf(UPI).lib to access Macintosh interfaces. The 2.0a1
- interfaces are a development release of the Pascal universal interfaces from
- Apple, please read the included release notes.
-
- Libraries
- - ANS libraries are specific to ANS compliant programs and should only be used when
- building Standard Pascal programs. The Universal Library retains the same behaviour
- as MPW's Pascal runtime, they're built on top of the Universal Interfaces and the
- new Mathlib from Apple. Libraries for ANSI-C functions are included in the runtime
- libraries.
-
- -----------------------------------------------------------------------------
- Marcel Achim Pascal Compilers Product Architect
-
-
- Bug Reports, Suggestions, and Technical Questions
- `````````````````````````````````````````````````
-
- Please send in your bug reports using the email Bug Report, Suggestion or Tech Question
- templates stored in the release notes folder. Send reports to support@metrowerks.com.
-
-
-